﻿using ContaPlanner.Models;
using System;
using System.Data.Entity;
using System.Linq;

namespace ContaPlanner.Data
{
    public class ContaPlannerTestData : DropCreateDatabaseAlways<ContaPlannerContext>
    {
        protected override void Seed(ContaPlannerContext context)
        {
            context.Bancos.Add(new Banco { Nombre = "Rabobank" });
            context.Bancos.Add(new Banco { Nombre = "Caixa d'Enginyers" });
            context.Bancos.Add(new Banco { Nombre = "ING Direct" });
            context.Bancos.Add(new Banco { Nombre = "Nationale Nederlanden" });
            context.Bancos.Add(new Banco { Nombre = "La Caixa" });
            context.Ubicaciones.Add(new Ubicacion { Nombre = "Alkmaar" });
            context.Ubicaciones.Add(new Ubicacion { Nombre = "Alkmaar Noord" });
            context.Ubicaciones.Add(new Ubicacion { Nombre = "Amsterdam" });
            context.Ubicaciones.Add(new Ubicacion { Nombre = "Cruquius" });
            context.Ubicaciones.Add(new Ubicacion { Nombre = "Eindhoven" });
            context.Ubicaciones.Add(new Ubicacion { Nombre = "Haarlem" });
            context.Ubicaciones.Add(new Ubicacion { Nombre = "Heerhugowaard" });
            context.Ubicaciones.Add(new Ubicacion { Nombre = "Hoofddorp" });
            context.Ubicaciones.Add(new Ubicacion { Nombre = "Middenwaard" });
            context.Ubicaciones.Add(new Ubicacion { Nombre = "Schagen" });
            context.Ubicaciones.Add(new Ubicacion { Nombre = "Schiphol" });
            context.Ubicaciones.Add(new Ubicacion { Nombre = "Schoorl" });
            context.Ubicaciones.Add(new Ubicacion { Nombre = "Zaandam" });
            context.Ubicaciones.Add(new Ubicacion { Nombre = "Canet de Mar" });
            context.Ubicaciones.Add(new Ubicacion { Nombre = "Arenys de Mar" });
            context.Ubicaciones.Add(new Ubicacion { Nombre = "Barcelona" });
            context.Ubicaciones.Add(new Ubicacion { Nombre = "Mataró" });
            context.Ubicaciones.Add(new Ubicacion { Nombre = "Mataró Parc" });
            context.Ubicaciones.Add(new Ubicacion { Nombre = "Diagonal Mar" });
            context.Ubicaciones.Add(new Ubicacion { Nombre = "La Maquinista" });
            context.Categorias.Add(new Categoria { Nombre = "Ropa y zapatos" });
            context.Categorias.Add(new Categoria { Nombre = "Viajes" });
            context.Categorias.Add(new Categoria { Nombre = "Vuelos" });
            context.Categorias.Add(new Categoria { Nombre = "Hoteles" });
            context.Categorias.Add(new Categoria { Nombre = "Aseo" });
            context.Categorias.Add(new Categoria { Nombre = "Casa" });
            context.Categorias.Add(new Categoria { Nombre = "Nóminas" });
            context.Categorias.Add(new Categoria { Nombre = "Nóminas NICE" });
            context.Categorias.Add(new Categoria { Nombre = "Telecomunicaciones" });
            context.Categorias.Add(new Categoria { Nombre = "Internet" });
            context.Categorias.Add(new Categoria { Nombre = "Teléfonía fija" });
            context.Categorias.Add(new Categoria { Nombre = "Teléfonía móvil" });
            context.Categorias.Add(new Categoria { Nombre = "Suministros" });
            context.Categorias.Add(new Categoria { Nombre = "Gas" });
            context.Categorias.Add(new Categoria { Nombre = "Agua" });
            context.Categorias.Add(new Categoria { Nombre = "Electricidad" });
            context.Categorias.Add(new Categoria { Nombre = "Ahorro" });
            context.Categorias.Add(new Categoria { Nombre = "Desahorro" });
            context.Categorias.Add(new Categoria { Nombre = "Reintegro cajero" });
            context.Categorias.Add(new Categoria { Nombre = "Hipoteca" });
            context.Categorias.Add(new Categoria { Nombre = "Hipoteca academia" });
            context.Categorias.Add(new Categoria { Nombre = "Electrónica" });
            context.Categorias.Add(new Categoria { Nombre = "Mantenimiento" });
            context.Cuentas.Add(new Cuenta { Nombre = "Rabo DirectRekening", Tipo = TipoCuenta.CuentaCorriente, Mostrar = true });
            context.Cuentas.Add(new Cuenta { Nombre = "Rabo InternetSparen", Tipo = TipoCuenta.CuentaAhorro, Mostrar = true });
            context.Cuentas.Add(new Cuenta { Nombre = "Cuenta corriente", Tipo = TipoCuenta.CuentaCorriente, Mostrar = true });
            context.Cuentas.Add(new Cuenta { Nombre = "IPF 1 mes", Tipo = TipoCuenta.CuentaAhorro, Mostrar = false });
            context.Cuentas.Add(new Cuenta { Nombre = "Cuenta Naranja", Tipo = TipoCuenta.CuentaAhorro, Mostrar = true });
            context.Cuentas.Add(new Cuenta { Nombre = "Internetsparen", Tipo = TipoCuenta.CuentaAhorro, Mostrar = true });
            context.Cuentas.Add(new Cuenta { Nombre = "VISA Cristian", Tipo = TipoCuenta.TarjetaCredito, Mostrar = true });
            context.Cuentas.Add(new Cuenta { Nombre = "VISA Eva", Tipo = TipoCuenta.TarjetaCredito, Mostrar = false });
            context.Cuentas.Add(new Cuenta { Nombre = "Monedero", Tipo = TipoCuenta.Efectivo, Mostrar = true });
            context.Cuentas.Add(new Cuenta { Nombre = "Sofía", Tipo = TipoCuenta.Persona, Mostrar = false });
            context.Cuentas.Add(new Cuenta { Nombre = "Lola", Tipo = TipoCuenta.Persona, Mostrar = true });
            context.Cuentas.Add(new Cuenta { Nombre = "Nel", Tipo = TipoCuenta.Persona, Mostrar = false });
            context.Cuentas.Add(new Cuenta { Nombre = "Ticket Restaurant", Tipo = TipoCuenta.Especie, Mostrar = false });
            context.Cuentas.Add(new Cuenta { Nombre = "NICE", Tipo = TipoCuenta.CuentaNormal, Mostrar = true });
            context.Cuentas.Add(new Cuenta { Nombre = "E-on", Tipo = TipoCuenta.CuentaNormal, Mostrar = false });
            context.Cuentas.Add(new Cuenta { Nombre = "Belastingdienst", Tipo = TipoCuenta.CuentaNormal, Mostrar = false });
            context.Cuentas.Add(new Cuenta { Nombre = "Ymere", Tipo = TipoCuenta.CuentaNormal, Mostrar = false });
            context.Cuentas.Add(new Cuenta { Nombre = "Nh1816", Tipo = TipoCuenta.CuentaNormal, Mostrar = false });
            context.Cuentas.Add(new Cuenta { Nombre = "Hoogheemraadschap Hollands Noorderkwartier", Tipo = TipoCuenta.CuentaNormal, Mostrar = false });
            context.Cuentas.Add(new Cuenta { Nombre = "Ziggo", Tipo = TipoCuenta.CuentaNormal, Mostrar = true });
            context.Cuentas.Add(new Cuenta { Nombre = "Telfort", Tipo = TipoCuenta.CuentaNormal, Mostrar = false });
            context.Cuentas.Add(new Cuenta { Nombre = "Media Markt", Tipo = TipoCuenta.CuentaNormal, Mostrar = false });
            context.SaveChanges();
            context.Cuentas.Single(c => c.Nombre == "Rabo DirectRekening").Banco = context.Bancos.Single(b => b.Nombre == "Rabobank");
            context.Cuentas.Single(c => c.Nombre == "Rabo InternetSparen").Banco = context.Bancos.Single(b => b.Nombre == "Rabobank");
            context.Cuentas.Single(c => c.Nombre == "Cuenta corriente").Banco = context.Bancos.Single(b => b.Nombre == "Caixa d'Enginyers");
            context.Cuentas.Single(c => c.Nombre == "IPF 1 mes").Banco = context.Bancos.Single(b => b.Nombre == "Caixa d'Enginyers");
            context.Cuentas.Single(c => c.Nombre == "Cuenta Naranja").Banco = context.Bancos.Single(b => b.Nombre == "ING Direct");
            context.Cuentas.Single(c => c.Nombre == "Internetsparen").Banco = context.Bancos.Single(b => b.Nombre == "Nationale Nederlanden");
            context.Cuentas.Single(c => c.Nombre == "VISA Cristian").Asociada = context.Cuentas.Single(c => c.Nombre == "Cuenta corriente");
            context.Cuentas.Single(c => c.Nombre == "VISA Eva").Asociada = context.Cuentas.Single(c => c.Nombre == "Cuenta corriente");
            context.Categorias.Single(c => c.Nombre == "Vuelos").SuperCategoria = context.Categorias.Single(c => c.Nombre == "Viajes");
            context.Categorias.Single(c => c.Nombre == "Hoteles").SuperCategoria = context.Categorias.Single(c => c.Nombre == "Viajes");
            context.Categorias.Single(c => c.Nombre == "Nóminas NICE").SuperCategoria = context.Categorias.Single(c => c.Nombre == "Nóminas");
            context.Categorias.Single(c => c.Nombre == "Internet").SuperCategoria = context.Categorias.Single(c => c.Nombre == "Telecomunicaciones");
            context.Categorias.Single(c => c.Nombre == "Teléfonía fija").SuperCategoria = context.Categorias.Single(c => c.Nombre == "Telecomunicaciones");
            context.Categorias.Single(c => c.Nombre == "Teléfonía móvil").SuperCategoria = context.Categorias.Single(c => c.Nombre == "Telecomunicaciones");
            context.Categorias.Single(c => c.Nombre == "Suministros").SuperCategoria = context.Categorias.Single(c => c.Nombre == "Casa");
            context.Categorias.Single(c => c.Nombre == "Gas").SuperCategoria = context.Categorias.Single(c => c.Nombre == "Suministros");
            context.Categorias.Single(c => c.Nombre == "Agua").SuperCategoria = context.Categorias.Single(c => c.Nombre == "Suministros");
            context.Categorias.Single(c => c.Nombre == "Electricidad").SuperCategoria = context.Categorias.Single(c => c.Nombre == "Suministros");
            context.Categorias.Single(c => c.Nombre == "Hipoteca").SuperCategoria = context.Categorias.Single(c => c.Nombre == "Casa");
            context.Categorias.Single(c => c.Nombre == "Hipoteca academia").SuperCategoria = context.Categorias.Single(c => c.Nombre == "Hipoteca");
            context.Categorias.Single(c => c.Nombre == "Mantenimiento").SuperCategoria = context.Categorias.Single(c => c.Nombre == "Casa");
            context.SaveChanges();
            context.Asientos.Add(new Asiento { Fecha = new DateTime(2014, 5, 23), Origen = context.Cuentas.Single(c => c.Nombre == "NICE"), Destino = context.Cuentas.Single(c => c.Nombre == "Rabo DirectRekening"), Importe = 4567.89M, Tipo = TipoAsiento.Nomina, Categoria = context.Categorias.Single(c => c.Nombre == "Nóminas") });
            context.Asientos.Add(new Asiento { Fecha = new DateTime(2014, 4, 25), Origen = context.Cuentas.Single(c => c.Nombre == "NICE"), Destino = context.Cuentas.Single(c => c.Nombre == "Rabo DirectRekening"), Importe = 5678.90M, Tipo = TipoAsiento.Nomina, Categoria = context.Categorias.Single(c => c.Nombre == "Nóminas") });
            context.Asientos.Add(new Asiento { Fecha = new DateTime(2014, 3, 25), Origen = context.Cuentas.Single(c => c.Nombre == "NICE"), Destino = context.Cuentas.Single(c => c.Nombre == "Rabo DirectRekening"), Importe = 4567.89M, Tipo = TipoAsiento.Nomina, Categoria = context.Categorias.Single(c => c.Nombre == "Nóminas") });
            context.Asientos.Add(new Asiento { Fecha = new DateTime(2014, 2, 25), Origen = context.Cuentas.Single(c => c.Nombre == "NICE"), Destino = context.Cuentas.Single(c => c.Nombre == "Rabo DirectRekening"), Importe = 2345.67M, Tipo = TipoAsiento.Nomina, Categoria = context.Categorias.Single(c => c.Nombre == "Nóminas") });
            context.Asientos.Add(new Asiento { Fecha = new DateTime(2014, 1, 24), Origen = context.Cuentas.Single(c => c.Nombre == "NICE"), Destino = context.Cuentas.Single(c => c.Nombre == "Rabo DirectRekening"), Importe = 4567.89M, Tipo = TipoAsiento.Nomina, Categoria = context.Categorias.Single(c => c.Nombre == "Nóminas") });
            context.Asientos.Add(new Asiento { Fecha = new DateTime(2013, 12, 24), Origen = context.Cuentas.Single(c => c.Nombre == "NICE"), Destino = context.Cuentas.Single(c => c.Nombre == "Rabo DirectRekening"), Importe = 1234.56M, Tipo = TipoAsiento.Nomina, Categoria = context.Categorias.Single(c => c.Nombre == "Nóminas") });
            context.Asientos.Add(new Asiento { Fecha = new DateTime(2013, 11, 25), Origen = context.Cuentas.Single(c => c.Nombre == "NICE"), Destino = context.Cuentas.Single(c => c.Nombre == "Rabo DirectRekening"), Importe = 1234.56M, Tipo = TipoAsiento.Nomina, Categoria = context.Categorias.Single(c => c.Nombre == "Nóminas") });
            context.Asientos.Add(new Asiento { Fecha = new DateTime(2013, 10, 25), Origen = context.Cuentas.Single(c => c.Nombre == "NICE"), Destino = context.Cuentas.Single(c => c.Nombre == "Rabo DirectRekening"), Importe = 1234.56M, Tipo = TipoAsiento.Nomina, Categoria = context.Categorias.Single(c => c.Nombre == "Nóminas") });
            context.Asientos.Add(new Asiento { Fecha = new DateTime(2013, 9, 25), Origen = context.Cuentas.Single(c => c.Nombre == "NICE"), Destino = context.Cuentas.Single(c => c.Nombre == "Rabo DirectRekening"), Importe = 1234.56M, Tipo = TipoAsiento.Nomina, Categoria = context.Categorias.Single(c => c.Nombre == "Nóminas") });
            context.Asientos.Add(new Asiento { Fecha = new DateTime(2013, 8, 23), Origen = context.Cuentas.Single(c => c.Nombre == "NICE"), Destino = context.Cuentas.Single(c => c.Nombre == "Rabo DirectRekening"), Importe = 1234.56M, Tipo = TipoAsiento.Nomina, Categoria = context.Categorias.Single(c => c.Nombre == "Nóminas") });
            context.Asientos.Add(new Asiento { Fecha = new DateTime(2013, 7, 25), Origen = context.Cuentas.Single(c => c.Nombre == "NICE"), Destino = context.Cuentas.Single(c => c.Nombre == "Rabo DirectRekening"), Importe = 1234.56M, Tipo = TipoAsiento.Nomina, Categoria = context.Categorias.Single(c => c.Nombre == "Nóminas") });
            context.Asientos.Add(new Asiento { Fecha = new DateTime(2013, 6, 25), Origen = context.Cuentas.Single(c => c.Nombre == "NICE"), Destino = context.Cuentas.Single(c => c.Nombre == "Rabo DirectRekening"), Importe = 2345.67M, Tipo = TipoAsiento.Nomina, Categoria = context.Categorias.Single(c => c.Nombre == "Nóminas") });
            context.Asientos.Add(new Asiento { Fecha = new DateTime(2013, 5, 24), Origen = context.Cuentas.Single(c => c.Nombre == "NICE"), Destino = context.Cuentas.Single(c => c.Nombre == "Rabo DirectRekening"), Importe = 4567.89M, Tipo = TipoAsiento.Nomina, Categoria = context.Categorias.Single(c => c.Nombre == "Nóminas") });
            context.Asientos.Add(new Asiento { Fecha = new DateTime(2013, 4, 25), Origen = context.Cuentas.Single(c => c.Nombre == "NICE"), Destino = context.Cuentas.Single(c => c.Nombre == "Rabo DirectRekening"), Importe = 2345.56M, Tipo = TipoAsiento.Nomina, Categoria = context.Categorias.Single(c => c.Nombre == "Nóminas") });
            context.Asientos.Add(new Asiento { Fecha = new DateTime(2013, 3, 25), Origen = context.Cuentas.Single(c => c.Nombre == "NICE"), Destino = context.Cuentas.Single(c => c.Nombre == "Rabo DirectRekening"), Importe = 2345.56M, Tipo = TipoAsiento.Nomina, Categoria = context.Categorias.Single(c => c.Nombre == "Nóminas") });
            context.Asientos.Add(new Asiento { Fecha = new DateTime(2013, 2, 25), Origen = context.Cuentas.Single(c => c.Nombre == "NICE"), Destino = context.Cuentas.Single(c => c.Nombre == "Rabo DirectRekening"), Importe = 2345.56M, Tipo = TipoAsiento.Nomina, Categoria = context.Categorias.Single(c => c.Nombre == "Nóminas") });
            context.Asientos.Add(new Asiento { Fecha = new DateTime(2013, 1, 25), Origen = context.Cuentas.Single(c => c.Nombre == "NICE"), Destino = context.Cuentas.Single(c => c.Nombre == "Rabo DirectRekening"), Importe = 2345.56M, Tipo = TipoAsiento.Nomina, Categoria = context.Categorias.Single(c => c.Nombre == "Nóminas") });
            context.Asientos.Add(new Asiento { Fecha = new DateTime(2013, 1, 30), Origen = context.Cuentas.Single(c => c.Nombre == "Ziggo"), Destino = context.Cuentas.Single(c => c.Nombre == "Rabo DirectRekening"), Importe = 53.95M, Tipo = TipoAsiento.Recibo, Categoria = context.Categorias.Single(c => c.Nombre == "Telecomunicaciones") });
            context.Asientos.Add(new Asiento { Fecha = new DateTime(2013, 2, 27), Origen = context.Cuentas.Single(c => c.Nombre == "Ziggo"), Destino = context.Cuentas.Single(c => c.Nombre == "Rabo DirectRekening"), Importe = 56.23M, Tipo = TipoAsiento.Recibo, Categoria = context.Categorias.Single(c => c.Nombre == "Telecomunicaciones") });
            context.Asientos.Add(new Asiento { Fecha = new DateTime(2013, 3, 28), Origen = context.Cuentas.Single(c => c.Nombre == "Ziggo"), Destino = context.Cuentas.Single(c => c.Nombre == "Rabo DirectRekening"), Importe = 54.48M, Tipo = TipoAsiento.Recibo, Categoria = context.Categorias.Single(c => c.Nombre == "Telecomunicaciones") });
            context.Asientos.Add(new Asiento { Fecha = new DateTime(2013, 4, 26), Origen = context.Cuentas.Single(c => c.Nombre == "Ziggo"), Destino = context.Cuentas.Single(c => c.Nombre == "Rabo DirectRekening"), Importe = 54.23M, Tipo = TipoAsiento.Recibo, Categoria = context.Categorias.Single(c => c.Nombre == "Telecomunicaciones") });
            context.Asientos.Add(new Asiento { Fecha = new DateTime(2013, 5, 30), Origen = context.Cuentas.Single(c => c.Nombre == "Ziggo"), Destino = context.Cuentas.Single(c => c.Nombre == "Rabo DirectRekening"), Importe = 58.78M, Tipo = TipoAsiento.Recibo, Categoria = context.Categorias.Single(c => c.Nombre == "Telecomunicaciones") });
            context.Asientos.Add(new Asiento { Fecha = new DateTime(2013, 6, 27), Origen = context.Cuentas.Single(c => c.Nombre == "Ziggo"), Destino = context.Cuentas.Single(c => c.Nombre == "Rabo DirectRekening"), Importe = 54.65M, Tipo = TipoAsiento.Recibo, Categoria = context.Categorias.Single(c => c.Nombre == "Telecomunicaciones") });
            context.Asientos.Add(new Asiento { Fecha = new DateTime(2013, 7, 30), Origen = context.Cuentas.Single(c => c.Nombre == "Ziggo"), Destino = context.Cuentas.Single(c => c.Nombre == "Rabo DirectRekening"), Importe = 53.95M, Tipo = TipoAsiento.Recibo, Categoria = context.Categorias.Single(c => c.Nombre == "Telecomunicaciones") });
            context.Asientos.Add(new Asiento { Fecha = new DateTime(2013, 8, 29), Origen = context.Cuentas.Single(c => c.Nombre == "Ziggo"), Destino = context.Cuentas.Single(c => c.Nombre == "Rabo DirectRekening"), Importe = 54.24M, Tipo = TipoAsiento.Recibo, Categoria = context.Categorias.Single(c => c.Nombre == "Telecomunicaciones") });
            context.Asientos.Add(new Asiento { Fecha = new DateTime(2013, 9, 27), Origen = context.Cuentas.Single(c => c.Nombre == "Ziggo"), Destino = context.Cuentas.Single(c => c.Nombre == "Rabo DirectRekening"), Importe = 54.09M, Tipo = TipoAsiento.Recibo, Categoria = context.Categorias.Single(c => c.Nombre == "Telecomunicaciones") });
            context.Asientos.Add(new Asiento { Fecha = new DateTime(2013, 10, 31), Origen = context.Cuentas.Single(c => c.Nombre == "Ziggo"), Destino = context.Cuentas.Single(c => c.Nombre == "Rabo DirectRekening"), Importe = 62.10M, Tipo = TipoAsiento.Recibo, Categoria = context.Categorias.Single(c => c.Nombre == "Telecomunicaciones") });
            context.Asientos.Add(new Asiento { Fecha = new DateTime(2013, 11, 28), Origen = context.Cuentas.Single(c => c.Nombre == "Ziggo"), Destino = context.Cuentas.Single(c => c.Nombre == "Rabo DirectRekening"), Importe = 56.73M, Tipo = TipoAsiento.Recibo, Categoria = context.Categorias.Single(c => c.Nombre == "Telecomunicaciones") });
            context.Asientos.Add(new Asiento { Fecha = new DateTime(2013, 12, 30), Origen = context.Cuentas.Single(c => c.Nombre == "Ziggo"), Destino = context.Cuentas.Single(c => c.Nombre == "Rabo DirectRekening"), Importe = 59.68M, Tipo = TipoAsiento.Recibo, Categoria = context.Categorias.Single(c => c.Nombre == "Telecomunicaciones") });
            context.Asientos.Add(new Asiento { Fecha = new DateTime(2014, 1, 30), Origen = context.Cuentas.Single(c => c.Nombre == "Ziggo"), Destino = context.Cuentas.Single(c => c.Nombre == "Rabo DirectRekening"), Importe = 53.95M, Tipo = TipoAsiento.Recibo, Categoria = context.Categorias.Single(c => c.Nombre == "Telecomunicaciones") });
            context.Asientos.Add(new Asiento { Fecha = new DateTime(2014, 2, 27), Origen = context.Cuentas.Single(c => c.Nombre == "Ziggo"), Destino = context.Cuentas.Single(c => c.Nombre == "Rabo DirectRekening"), Importe = 57.15M, Tipo = TipoAsiento.Recibo, Categoria = context.Categorias.Single(c => c.Nombre == "Telecomunicaciones") });
            context.Asientos.Add(new Asiento { Fecha = new DateTime(2014, 3, 28), Origen = context.Cuentas.Single(c => c.Nombre == "Ziggo"), Destino = context.Cuentas.Single(c => c.Nombre == "Rabo DirectRekening"), Importe = 55.04M, Tipo = TipoAsiento.Recibo, Categoria = context.Categorias.Single(c => c.Nombre == "Telecomunicaciones") });
            context.Asientos.Add(new Asiento { Fecha = new DateTime(2014, 4, 29), Origen = context.Cuentas.Single(c => c.Nombre == "Ziggo"), Destino = context.Cuentas.Single(c => c.Nombre == "Rabo DirectRekening"), Importe = 58.23M, Tipo = TipoAsiento.Recibo, Categoria = context.Categorias.Single(c => c.Nombre == "Telecomunicaciones") });
            context.Asientos.Add(new Asiento { Fecha = new DateTime(2014, 6, 1), Origen = context.Cuentas.Single(c => c.Nombre == "Rabo DirectRekening"), Destino = context.Cuentas.Single(c => c.Nombre == "Internetsparen"), Importe = 1000M, Tipo = TipoAsiento.Transferencia, Categoria = context.Categorias.Single(c => c.Nombre == "Ahorro") });
            context.Asientos.Add(new Asiento { Fecha = new DateTime(2014, 5, 1), Origen = context.Cuentas.Single(c => c.Nombre == "Rabo DirectRekening"), Destino = context.Cuentas.Single(c => c.Nombre == "Internetsparen"), Importe = 1000M, Tipo = TipoAsiento.Transferencia, Categoria = context.Categorias.Single(c => c.Nombre == "Ahorro") });
            context.Asientos.Add(new Asiento { Fecha = new DateTime(2014, 4, 1), Origen = context.Cuentas.Single(c => c.Nombre == "Rabo DirectRekening"), Destino = context.Cuentas.Single(c => c.Nombre == "Internetsparen"), Importe = 1000M, Tipo = TipoAsiento.Transferencia, Categoria = context.Categorias.Single(c => c.Nombre == "Ahorro") });
            context.Asientos.Add(new Asiento { Fecha = new DateTime(2014, 3, 1), Origen = context.Cuentas.Single(c => c.Nombre == "Rabo DirectRekening"), Destino = context.Cuentas.Single(c => c.Nombre == "Internetsparen"), Importe = 1000M, Tipo = TipoAsiento.Transferencia, Categoria = context.Categorias.Single(c => c.Nombre == "Ahorro") });
            context.Asientos.Add(new Asiento { Fecha = new DateTime(2014, 2, 1), Origen = context.Cuentas.Single(c => c.Nombre == "Rabo DirectRekening"), Destino = context.Cuentas.Single(c => c.Nombre == "Internetsparen"), Importe = 1000M, Tipo = TipoAsiento.Transferencia, Categoria = context.Categorias.Single(c => c.Nombre == "Ahorro") });
            context.Asientos.Add(new Asiento { Fecha = new DateTime(2014, 1, 1), Origen = context.Cuentas.Single(c => c.Nombre == "Rabo DirectRekening"), Destino = context.Cuentas.Single(c => c.Nombre == "Internetsparen"), Importe = 1000M, Tipo = TipoAsiento.Transferencia, Categoria = context.Categorias.Single(c => c.Nombre == "Ahorro") });
            context.Asientos.Add(new Asiento { Fecha = new DateTime(2013, 12, 1), Origen = context.Cuentas.Single(c => c.Nombre == "Rabo DirectRekening"), Destino = context.Cuentas.Single(c => c.Nombre == "Internetsparen"), Importe = 6000M, Tipo = TipoAsiento.Transferencia, Categoria = context.Categorias.Single(c => c.Nombre == "Ahorro") });
            context.Asientos.Add(new Asiento { Fecha = new DateTime(2014, 1, 1), Origen = context.Cuentas.Single(c => c.Nombre == "Rabo DirectRekening"), Destino = context.Cuentas.Single(c => c.Nombre == "Rabo InternetSparen"), Importe = 5000M, Tipo = TipoAsiento.Transferencia, Categoria = context.Categorias.Single(c => c.Nombre == "Ahorro") });
            context.Asientos.Add(new Asiento { Fecha = new DateTime(2014, 5, 25), Origen = context.Cuentas.Single(c => c.Nombre == "Rabo DirectRekening"), Destino = context.Cuentas.Single(c => c.Nombre == "Sofía"), Importe = 184M, Tipo = TipoAsiento.Transferencia, Categoria = context.Categorias.Single(c => c.Nombre == "Hipoteca academia") });
            context.Asientos.Add(new Asiento { Fecha = new DateTime(2014, 4, 25), Origen = context.Cuentas.Single(c => c.Nombre == "Rabo DirectRekening"), Destino = context.Cuentas.Single(c => c.Nombre == "Sofía"), Importe = 184M, Tipo = TipoAsiento.Transferencia, Categoria = context.Categorias.Single(c => c.Nombre == "Hipoteca academia") });
            context.Asientos.Add(new Asiento { Fecha = new DateTime(2014, 3, 25), Origen = context.Cuentas.Single(c => c.Nombre == "Rabo DirectRekening"), Destino = context.Cuentas.Single(c => c.Nombre == "Sofía"), Importe = 184M, Tipo = TipoAsiento.Transferencia, Categoria = context.Categorias.Single(c => c.Nombre == "Hipoteca academia") });
            context.Asientos.Add(new Asiento { Fecha = new DateTime(2014, 2, 25), Origen = context.Cuentas.Single(c => c.Nombre == "Rabo DirectRekening"), Destino = context.Cuentas.Single(c => c.Nombre == "Sofía"), Importe = 184M, Tipo = TipoAsiento.Transferencia, Categoria = context.Categorias.Single(c => c.Nombre == "Hipoteca academia") });
            context.Asientos.Add(new Asiento { Fecha = new DateTime(2014, 1, 25), Origen = context.Cuentas.Single(c => c.Nombre == "Rabo DirectRekening"), Destino = context.Cuentas.Single(c => c.Nombre == "Sofía"), Importe = 184M, Tipo = TipoAsiento.Transferencia, Categoria = context.Categorias.Single(c => c.Nombre == "Hipoteca academia") });
            context.Asientos.Add(new Asiento { Fecha = new DateTime(2014, 1, 1), Origen = context.Cuentas.Single(c => c.Nombre == "VISA Cristian"), Destino = context.Cuentas.Single(c => c.Nombre == "Media Markt"), UbicacionDestino = context.Ubicaciones.Single(c => c.Nombre == "Alkmaar"), Importe = 234.56M, Tipo = TipoAsiento.PagoTarjeta, Categoria = context.Categorias.Single(c => c.Nombre == "Electrónica") });
            context.Asientos.Add(new Asiento { Fecha = new DateTime(2013, 6, 5), Origen = context.Cuentas.Single(c => c.Nombre == "Rabo DirectRekening"), Destino = context.Cuentas.Single(c => c.Nombre == "Media Markt"), UbicacionDestino = context.Ubicaciones.Single(c => c.Nombre == "Mataró Parc"), Importe = 100M, Tipo = TipoAsiento.PagoTarjeta, Categoria = context.Categorias.Single(c => c.Nombre == "Electrónica") });
            context.Asientos.Add(new Asiento { Fecha = new DateTime(2014, 3, 2), Origen = context.Cuentas.Single(c => c.Nombre == "Rabo DirectRekening"), Destino = context.Cuentas.Single(c => c.Nombre == "Cuenta corriente"), Importe = 500M, Tipo = TipoAsiento.Transferencia, Categoria = context.Categorias.Single(c => c.Nombre == "Mantenimiento") });
            context.Asientos.Add(new Asiento { Fecha = new DateTime(2013, 2, 1), Origen = context.Cuentas.Single(c => c.Nombre == "Rabo DirectRekening"), Destino = context.Cuentas.Single(c => c.Nombre == "Cuenta corriente"), Importe = 500M, Tipo = TipoAsiento.Transferencia, Categoria = context.Categorias.Single(c => c.Nombre == "Mantenimiento") });
            context.Asientos.Add(new Asiento { Fecha = new DateTime(2014, 5, 6), Origen = context.Cuentas.Single(c => c.Nombre == "Cuenta corriente"), Destino = context.Cuentas.Single(c => c.Nombre == "Cuenta Naranja"), Importe = 34.56M, Tipo = TipoAsiento.Transferencia, Categoria = context.Categorias.Single(c => c.Nombre == "Ahorro") });
            context.Asientos.Add(new Asiento { Fecha = new DateTime(2013, 12, 1), Origen = context.Cuentas.Single(c => c.Nombre == "Rabo DirectRekening"), Destino = context.Cuentas.Single(c => c.Nombre == "Monedero"), Importe = 50M, Tipo = TipoAsiento.ReintegroIngreso, Categoria = context.Categorias.Single(c => c.Nombre == "Reintegro cajero") });
            context.Asientos.Add(new Asiento { Fecha = new DateTime(2013, 11, 1), Origen = context.Cuentas.Single(c => c.Nombre == "Rabo DirectRekening"), Destino = context.Cuentas.Single(c => c.Nombre == "Monedero"), Importe = 50M, Tipo = TipoAsiento.ReintegroIngreso, Categoria = context.Categorias.Single(c => c.Nombre == "Reintegro cajero") });            
            context.Recibos.Add(new Recibo
            {
                Frecuencia = Frecuencia.Mensual, 
                Importe = 2658.13M,
                TipoImporte = TipoImporte.Fijo,
                RecibosMedia = 0,
                DiaMes = 25,
                TipoDiaMes = TipoDiaMes.Fijo,
                DiaMesLaboral = DiaMesLaboral.MoverAntes,
                Origen = context.Cuentas.Single(c => c.Nombre == "NICE"), 
                Destino = context.Cuentas.Single(c => c.Nombre == "Rabo DirectRekening")
            });
            context.Recibos.Add(new Recibo
            {
                Frecuencia = Frecuencia.Mensual,
                Importe = 54.95M,
                TipoImporte = TipoImporte.Media,
                RecibosMedia = 3,
                DiaMes = 27,
                TipoDiaMes = TipoDiaMes.Anterior,
                DiaMesLaboral = DiaMesLaboral.MoverAntes,
                Origen = context.Cuentas.Single(c => c.Nombre == "Ziggo"),
                Destino = context.Cuentas.Single(c => c.Nombre == "Rabo DirectRekening")
            });
            base.Seed(context);
        }
    }
}
